package com.ssm.changeunit.persistance;

import java.util.*;

/**
 *
 * @author 시리우스
 */
public abstract class AbstractBranchDAO extends AbstractDAO {
    /**
     * 검색
     * 
     * @param branchName
     * @return
     * @throws com.ssm.changeunit.persistance.PersistanceException
     */
    public abstract BranchDTO find(String branchName) throws PersistanceException;

    
    public abstract List<BranchDTO> findByChangeUnitId(String changeUnitId) throws PersistanceException;
            
    /**
     * 리스트 전부 검색
     * 
     * @return
     * @throws com.ssm.changeunit.persistance.PersistanceException
     */
    public abstract List<BranchDTO> list() throws PersistanceException;
    
    /**
     * 삽입
     * 
     * @param branchDTO
     * @throws com.ssm.changeunit.persistance.PersistanceException
     */
    public abstract void insert(BranchDTO branchDTO) throws PersistanceException;
    
    /**
     * 업데이트
     * 
     * @param branchDTO
     * @throws com.ssm.changeunit.persistance.PersistanceException
     */
    public abstract void update(BranchDTO branchDTO) throws PersistanceException;
    
    /**
     * 삭제
     * 
     * @param branchName
     * @throws com.ssm.changeunit.persistance.PersistanceException
     */
    public abstract void delete(String branchName) throws PersistanceException;
}
